package com.itheima.task.service;

import com.itheima.model.audit.pojos.AuditTask;
import com.itheima.model.common.dtos.ResponseResult;

/**
 * 审核服务接口
 */
public interface AuditService {

    /**
     * 执行 AI 审核
     * @param task 审核任务
     */
    void executeAudit(AuditTask task);

    /**
     * 人工审核通过
     * @param taskId 任务ID
     * @param auditorId 审核员ID
     * @param comment 审核意见
     * @return 操作结果
     */
    ResponseResult manualPass(String taskId, Integer auditorId, String comment);

    /**
     * 人工审核拒绝
     * @param taskId 任务ID
     * @param auditorId 审核员ID
     * @param comment 审核意见
     * @return 操作结果
     */
    ResponseResult manualReject(String taskId, Integer auditorId, String comment);

    /**
     * 查询待人工审核的任务列表
     * @param page 页码
     * @param size 每页数量
     * @return 任务列表
     */
    ResponseResult getPendingManualAuditTasks(Integer page, Integer size);
}

